The present invention is directed toward detecting the rate of a variable-rate digital signal and, more particularly, toward detecting the rate of a variable-rate digital signal without an explicit indication from the transmitting source.
In digital communication systems, a transmitter may utilize variable-rate speech vocoders capable of encoding digital data signals at different rates depending on various parameters. Transmitter vocoders typically encode data for formatting into data frames of various data rates, with each frame being twenty milli-seconds in duration. For example, where the digital data signal is a voice data signal, the transmitter vocoder may select a rate in response to the amount of voice activity contained in each voice data frame in an effort to minimize interference to other users in the system. Rate information for each frame is generally not transmitted with the speech signal and, accordingly, the receiver must be able to determine the rate of each frame in order to be able to properly reconstruct the speech signal.
An IS-95 communication system is one such communication system in which variable-rate speech vocoders are employed. Generally, an IS-95B voice traffic channel is capable of supporting two rate sets, with each rate set including a plurality of data transmission rates. For example, rate set 1 can transmit encoded data at four different frame rates, namely, 9600 bps, 4800 bps, 2400 bps, and 1200 bps. Similarly, rate set 2 can transmit encoded data at four different frame rates, namely, 14400 bps, 7200 bps, 3600 bps, and 1800 bps.
The highest data frame rates (9600 and 14400 bps) are generally referred to as xe2x80x9cfull-ratexe2x80x9d frames; the second highest data frame rates (4800 and 7200 bps) are generally referred to as xe2x80x9chalf-ratexe2x80x9d frames; the third highest data frame rates (2400 and 3600 bps) are generally referred to as xe2x80x9cquarter-ratexe2x80x9d frames; and the lowest data frame rates (1200 and 1800 bps) are generally referred to as xe2x80x9ceighth-ratexe2x80x9d frames. During call set up, one rate set is selected according to system preference. Within the call transmission, the data rate can change from one twenty milli-second frame to the next. Since rate information for each frame is not transmitted, the receiver needs to determine whether to erase a received frame, or, if the receiver decides to accept the frame, the rate at which the frame has been transmitted in order to properly reconstruct the voice information.
One known method of determining the data rate of a received digital signal decodes the received data frame at each of the four possible rates within a preselect rate set. The decoded bits are then re-encoded and compared with the un-decoded data bits. The number of bit errors serves as an indication of the likelihood that the received frame belongs to the corresponding rate. In addition to the re-encoded bit errors, CRC (Cyclic Redundancy Check) check indicator bits for the two highest frame rates, and Yamamoto Quality Metrics for the two lowest frame rates, are also generated and utilized in making the final decision. Using this information and ten predetermined thresholds, a microprocessor determines the rate at which the received data is encoded using a complicated binary decision tree. Extensive simulation and fine tuning are necessary in order to properly optimize the ten thresholds.
The present invention is directed toward overcoming one or more of the above-mentioned problems.
A method of detecting the data rate of a received digital signal is provided. The method generally includes the steps of decoding a received signal at each of a plurality of possible rates to produce a plurality of decoded bit sequences and a corresponding plurality of correlation metrics, one for each of the plurality of different rates. Quality checks are performed on the plurality of decoded bit sequences producing a plurality of quality check indication signals, one for each of the plurality of different rates. The pluralities of correlation metrics and quality check indication signals are analyzed and the data rate of the received signal is determined based on a novel decision process.
In one form, the analyzing step includes the steps of comparing various ratios of the plurality of correlation metrics with respective threshold values, and determining the data rate of the received signal based on the comparison. The quality check indication signal associated with the determined data rate is then analyzed to determine the probability that the determined data rate is the data rate of the transmitted signal. If the quality check indication signal passes, the received frame of the digital signal is processed at the determined data rate. If not, the received frame of the digital signal is erased.
In another form, the analyzing step includes the steps of checking the plurality of quality check indication signals associated with each of the different rates, and then comparing ratios of correlation metrics of only certain of the plurality of different rates whose associated quality check indication signal passed the checking step with respective threshold values. The data rate of the received signal is then determined based on a novel decision process. If the data rate is unable to be determined, the frame of the received signal is erased.
It is an object of the present invention to provide a simple yet reliable method of determining the data rate of a received digital signal.
Other aspects, objects and advantages of the present invention can be obtained from a study of the application, the drawings, and the appended claims.